﻿using System.Linq;
using GalaSoft.MvvmLight;
using GalaSoft.MvvmLight.Ioc;
using Mutzl.Samples.VideoApp.LocalContent.Model;

namespace Mutzl.Samples.VideoApp.LocalContent.ViewModel
{
    public class DetailViewModel : ViewModelBase
    {
        // Dieser Konstruktor ist nur für Designtime vorgesehen
        [PreferredConstructor]
        public DetailViewModel()
        {
            if (IsInDesignMode)
            {
                // ... und holt sich einfach das erste Video
                Video = Video.GetVideos().FirstOrDefault();
            }
        }

        public DetailViewModel(string id)
        {
            Video = Video.GetVideos().SingleOrDefault(v => v.Id == id);
        }

        // Zur Laufzeit kommt dieser Konstruktor ins Spiel
        public DetailViewModel(Video video)
        {
            Video = video;
        }

        private Video _video;
        public Video Video
        {
            get { return _video; }
            set
            {
                if (_video == value) return;
                _video = value;
                RaisePropertyChanged(() => Video);
            }
        }

        private bool _isFullScreen;
        public bool IsFullScreen
        {
            get { return _isFullScreen; }
            set
            {
                if (_isFullScreen == value) return;
                _isFullScreen = value;
                RaisePropertyChanged(() => IsFullScreen);
            }
        }




    }
}
